After completing this lesson, you’ll be able to:
Null values are an important part of FME’s attribute handling. Not every dataset has null values, and not every format supports them; but when they do exist, it is important for FME to handle them correctly.
In general, a null attribute value is the equivalent of nothing. However, it’s important to be precise in our terminology because there are many ways to represent nothing, for example:
In fact, Safe Software’s developers identified fifteen (15) different ways for “nothing” to be represented in spatial and tabular data!
So when we talk about null, it has a particular meaning. For us, null is a specific state that is deliberately set to signify that the information does not exist. It tells us that the lack of information is not a mistake, as a missing or empty value might be.
Because there are so many different methods, this section will discuss ways to handle "nothing" attribute values, but with a particular emphasis on null values.
FME’s internal engine has its own state to represent null. However, when presented to the user, a null value is usually represented as <null>
.
For example, this feature in the Logger has <null>
for the ParkName
attribute:
Similarly, the FME Data Inspector will depict nulls as <null>
:
Notice how we have a wide range of "nothing" values here. The ParkName is a true <null>
, the RefParkId has a value of -9999
, and Washrooms is <missing>
(meaning the entire attribute doesn't exist).